package cn.z2huo.productcenter.enums.flag;

import lombok.Getter;
import lombok.RequiredArgsConstructor;

import java.util.Arrays;
import java.util.Map;
import java.util.stream.Collectors;

/**
 * <p>可用状态，表示是否可用
 *
 * @author z2huo
 */
@Getter
@RequiredArgsConstructor
public enum AvailableFlagEnum {

    /**
     * 可用，表示当前在本系统中是可用状态
     */
    AVAILABLE("1", "可用"),

    /**
     * 不可用，表示当前在本系统中是不可用状态
     */
    UNAVAILABLE("0", "不可用");

    private final String value;

    private final String desc;

    private static final Map<String, AvailableFlagEnum> valueMap
            = Arrays.stream(AvailableFlagEnum.values()).collect(Collectors.toMap(AvailableFlagEnum::getValue, flag -> flag));

    public static AvailableFlagEnum fromValue(String value) {
        return valueMap.get(value);
    }
}
